Dropbox is a ‘cloud-based file synchronisation tool’: files placed in the special Dropbox folder are automatically uploaded to their servers, and automatically downloaded to any other computer on which you have set up Dropbox. Changes are also synchronised every time you save the file.
We want you to use Dropbox for four reasons:
That you keep all files that aren’t in GitHub in your Dropbox folder. This applies to all your CASA MSc work but could be especially useful for ensuring that data files used as part of your group work are readily accessible!
Dropbox signup: bit.ly/32jhdvN
Slack is a “messaging app for teams” that is designed to reduce email, organise conversations & topics of discussion, and pull in relevant data from a host of other services in a flexible, fully-searchable way.
We want you to use Slack for four reasons:
Install the Slack client on your phone and on your personal computer and start using it as the way to ask questions, share answers, and generally keep ‘up to date’ on things across the entire MSc.
Workspace: casa-students-2023-24.slack.com
Slack signup: https://join.slack.com/t/casa-students-2023-24/shared_invite/zt-23rdl3w3a-2yK6NsinwzHlHeJogLUGEA
P.S. Unless a question is personal it should normally be asked in the appropriate module channel.
Docker “makes development efficient and predictable” because it is “used through the development lifecycle for fast, easy and portable application development”.
Docker is a ‘virtualisation platform’ that allows you to run a second (virtual) computer on your personal computer. We use it for four reasons:
Using Docker because configuring a development machine is hard, this makes it simple. If a Docker image works for us then we know 1 it works for you.
Docker Desktop with the jreades/sds:2024-intel/jreades/sds:2024-silicon image is your starting point.
Anaconda Python is a ‘flavour’ of Python that comes packaged with useful tools for configuring and management. If virtualisation is too resource-intensive for your computer (e.g. because it’s older or doesn’t have enough RAM) then installing Python directly is the next-best option.
We use Anaconda Python for three reasons:
It’s what we use on the Docker image as well.
If Docker doesn’t work on your computer, then this is how we will get you up and running because it’s (fairly) robust and ‘standard issue’. However, we can’t guarantee you’ll get the same versions of every package as installed on the virtualised systems so differences may emerge.
You’ll need to download the ‘Individual Edition’ installer1
ChatGPT from OpenAI (an increasingly ‘ironic’ name) is simply the most famous of a growing number of Large Language Models that draw on information found on the web and in open texts to perform sophisticated summarisation tasks.
Many programmers are starting to use LLMs as part of their coding for three reasons:
This is very much a ‘brave new world’ and we are all trying to figure it out on the fly.
Here’s what we’ve noticed about ChatGPT’s output so far:
Who is Jon Reades?1
Jon Reades is a Senior Lecturer in the Department of Geography at University College London (UCL). He is also the director of the MSc in Smart Cities and Urban Analytics program at UCL.
Reades’ research focuses on the intersection of cities, data, and technology, with a particular emphasis on the use of spatial data and analytics to understand urban processes and support decision-making in cities. He has published widely on topics such as spatial analysis, urban data science, and the use of smart technologies in urban planning and governance.
In addition to his academic work, Reades is actively involved in a number of professional organizations and initiatives related to urban analytics and smart cities. He is a co-founder of the Urban Dynamics Institute at UCL and has served on the editorial board of several academic journals in the fields of geography and urban studies.
LLMs like ChatGPT can help you to learn to be a better coder by providing guidance and feedback, but for many applications a competent human being will be faster and have a better grasp of the purpose of the code.
LLMs as co-authors
Using ChatGPT as your co-pilot is not the same as using ChatGPT as your co-author. In this module the latter is still considered plagiarism.
The people making the best use of LLMs are people who already know how to code or write.
Let’s turn to the rest in part 2: Writing Code!
Tools of the Trade • Jon Reades